/*
 * Copyright 2016-2017 TVI Go Easy.
 * Created on 2017/4/27 23:56
 */
package org.mechanic.fund.service.product;

import org.mechanic.fund.domain.system.manager.Permission;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;

import java.util.List;

/**
 * 权限信息服务接口
 *
 * @author mechanic
 * @version 0.0.1
 */
public interface IPermissionService {
    /**
     * 返回匹配用户编号的权限信息
     *
     * @param id 用户编号
     * @return 权限信息
     */
    Permission findById(String id);

    /**
     * 返回权限信息分页列表
     *
     * @param pageRequest 分页信息
     * @return 权限信息分页列表
     */
    Page<Permission> getList(PageRequest pageRequest);

    /**
     * 返回匹配角色编号的权限信息分页列表
     *
     * @param roleId 角色编号
     * @param pageRequest 分页信息
     * @return 权限信息分页列表
     */
    //Page<Permission> getList(String roleId, PageRequest pageRequest);

    /**
     * 删除匹配用户编号的权限信息
     *
     * @param id 用户编号
     */
    void delete(String id);

    /**
     * 保存权限信息
     *
     * @param permissions 权限信息集合
     */
    void save(List<Permission> permissions, String operationUserId);
}
